import request from '@/utils/request'
import {encrypt} from "@/utils/jsencrypt.js";

// 登录方法
export function login(username, password, code, uuid, rememberMe) {
  password = encrypt(password);
  const data = {
    username,
    password,
    code,
    uuid,
    rememberMe
  }
  return request({
    url: '/login',
    headers: {
      isToken: false,
      repeatSubmit: false
    },
    method: 'post',
    data: data
  })
}

// 第三方平台登录
export function socialLogin(source, code, state, rememberMe) {
  const data = {
    code,
    state,
    rememberMe
  }
  return request({
    url: '/system/auth/social-login/' + source,
    method: 'get',
    params: data
  })
}

// 注册方法
export function register(data) {
  return request({
    url: '/register',
    headers: {
      isToken: false
    },
    method: 'post',
    data: data
  })
}

// 获取用户详细信息
export function getInfo() {
  return request({
    url: '/getInfo',
    method: 'get'
  })
}

// 退出方法
export function logout() {
  return request({
    url: '/logout',
    method: 'post'
  })
}

// 获取登陆配置
export function getLoginCfg() {
  return request({
    url: '/getLoginCfg',
    method: 'get',
    timeout: 20000
  })
}

// 获取验证码
export function getCodeImg() {
  return request({
    url: '/captchaImage',
    headers: {
      isToken: false
    },
    method: 'get',
    timeout: 20000
  })
}